<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>01_react介绍</title>
</head>
<body>
    <h2>React框架：FaceBook的开源库</h2>
    <h3>React特点</h3>
    <ul>
        <li>React是一个基于JavaScript的前端UI视图框架</li>
        <li>虚拟DOM（Virtual DOM）：顾名思义不是真正的DOM结构，它不需要浏览器API的支持，其本质上是一个JS对象，该对象其实就是在真正的DOM结构基础上创建的一个抽象层，完美反映了真实的DOM结构，当页面的数据或者结构发生变化时，React会通过比较算法（diff算法）比较出上一次与本次虚拟DOM的不同，仅仅将变化的部分同步到真是的DOM中</li>
        <li>JSX语法（JavaScript XML）：可以让我们用JS的语法书写HTML</li>
        <li>组件化</li>
        <li>灵活（React推崇 all in JS）</li>
    </ul>

    <h3>React和Vue的区别？？？（面试题）</h3>
    <h3>
        <p>1、React里的数据是不可变的，react的数据流是单向的，从上至下，从父向子流动，如果想要更新视图，两步骤：1、人为调用setState方法 2、当setState触发后，react会重新render虚拟Dom，让数据发生变化</p>
        <p>2、通过Js来操作一切</p>
        <p>3、组件的类型比较多，class组件/function组件/高阶组件/样式组件/容器组件/副作用组件...</p>
        <p>4、React的拓展性很强，很多功能，都交给了react社区</p>
    </h3>
</body>
</html>